DataEngine for .NET
Exec(String,String,Dictionary<String,Object>,CancellationToken,ProgressDelegate) メソッド

C1.PivotEngine アセンブリ > C1.PivotEngine 名前空間 > C1PivotEngine クラス > Exec メソッド : Exec(String,String,Dictionary<String,Object>,CancellationToken,ProgressDelegate) メソッド
サーバーのファイルシステム内で、DataEngine データがファイルに保存されている場所のパス。
ビューの基になる DataEngine テーブルの名前。
ビューの定義。これは、System.Web.Script.Serialization.JavaScriptSerializer.Deserialize を使用して JSON 形式でビューから取得されます。
タスクをキャンセルできるようにします。
進捗状況の更新を報告するコールバック関数。
呼び出し元のクライアントに集計結果を返すビューをサーバー側で非同期実行します。
シンタックス
'宣言
 
Public Overloads Shared Function Exec( _
   ByVal workspace As System.String, _
   ByVal table As System.String, _
   ByVal view As System.Collections.Generic.Dictionary(Of String,Object), _
   ByVal cancelToken As System.Threading.CancellationToken, _
   ByVal progress As ProgressDelegate _
) As System.Threading.Tasks.Task(Of Dictionary(Of Object(),Object()))
public static System.Threading.Tasks.Task<Dictionary<object[],object[]>> Exec( 
   System.string workspace,
   System.string table,
   System.Collections.Generic.Dictionary<string,object> view,
   System.Threading.CancellationToken cancelToken,
   ProgressDelegate progress
)

パラメータ

workspace
サーバーのファイルシステム内で、DataEngine データがファイルに保存されている場所のパス。
table
ビューの基になる DataEngine テーブルの名前。
view
ビューの定義。これは、System.Web.Script.Serialization.JavaScriptSerializer.Deserialize を使用して JSON 形式でビューから取得されます。
cancelToken
タスクをキャンセルできるようにします。
progress
進捗状況の更新を報告するコールバック関数。

戻り値の型

ビューの実行(集計)結果。
解説

このメソッドは、サーバーで複数ユーザーによるスレッドセーフなビューの実行をサポートします。このような実行の結果は、 Web などで視覚化のためにクライアントに渡すことを目的としています。

このメソッドは、DataEngine の複数の作業領域とテーブルでビューを実行できます。そのために、Workspace オブジェクトのプールを内部的に保持します。

集計結果は、キーを値にマッピングする辞書です。

各値は、ビュー内の値フィールドの値を、それらのフィールドがビュー内で指定されている順に表す配列です。 したがって、たとえば、ビューに 2 つの値フィールド V1 および V2 がある場合、各値は配列 [v1, v2] になります。 ここで、v1 はキーに対応する V1 の集計値、v2 は同じキーに対応する V2 の集計値です。

キーは、ビュー内の行フィールドと列フィールドの値を、まず行フィールド、次に列フィールドの順、かつフィールドがビュー内で指定されている順に並べた配列です。 この配列の要素の一部またはすべてを null にできます。この場合、対応する値は、 キー内の null が含まれている位置に該当するフィールドのすべての値を集計したものになります。すべての要素が null のキー (このようなキーは辞書内で一意です)は、総計に対応します。

たとえば、行フィールド Country(国)、列フィールド Customer(顧客)、値フィールド Withdrawal(入金)および Deposit(出金)があり、集計演算 Sum(合計)が指定されている場合、次のようになります。 キー ["UK", "Joe"] は、v1/v2 をイギリス(UK)の顧客 Joe のすべての入金/出金の合計として、[v1, v2] に対応します。 キー ["UK", null] は、v1/v2 をイギリス(UK)のすべての顧客のすべての入金/出金の合計として、[v1, v2] に対応します。 キー [null, "Joe"] は、v1/v2 を名前 Joe を持つ(すべての国の)すべての顧客のすべての入金/出金の合計として、[v1, v2] に対応します。 キー [null, null] は、v1/v2 をすべての国のすべての顧客のすべての入金/出金の合計として、[v1, v2] に対応します。

参照

C1PivotEngine クラス
C1PivotEngine メンバ
オーバーロード一覧